// 数组类型  
// 类型+[]
let fibonacci1: number[] = [1, 2, 3, 4, 5, 6];

// 数组类型：错误示例
// 设置类型后不允许数组内容出现其他类型数据
// fibonacci.push("1")


// 数组泛型
let fibonacci2: Array<number> = [1, 2, 3, 4, 5, 6];


// 以接口表示
interface numArr {
    [index: number]: number;
}
let fibonacci3: numArr = [1, 2, 3, 4, 5, 6];

// 类数组 
// arguments为一个类数组，应该用接口表示
function sumA() {
    let args: {
        [index: number]: number;
        length: number;
        callee: Function;
    } = arguments;
}

// TypeScript内置数组接口定义其一
// interface IArguments {
//     [index: number]: any;
//     length: number;
//     callee: Function;
// }

function sumB() {
    let args: IArguments = arguments;
}